package com.zlq.reggie.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zlq.reggie.dto.DishDto;
import com.zlq.reggie.entity.Dish;
import com.zlq.reggie.entity.DishFlavor;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

public interface DishService extends IService<Dish> {
    /**
     *
     新增菜品，同时插入菜品对应的口味数据，需要同时操作两张表
     */
    @Transactional
    void saveWithFlavor(DishDto dishDto);

    /**
     * 根据id查询菜品信息和口味
     * @param id
     * @return
     */
    DishDto getByIdWithFlavor(Long id);

    /**
     * 更新菜品信息和口味信息
     * @param dishDto
     */
    @Transactional
    void updateWithFlavor(DishDto dishDto);

    /**
     * 更新起售停售状态
     * @param status
     * @param ids
     */
    @Transactional
    void  statusUpdate(Integer status, List<Long> ids);

    /***
     * 单个和批量删除
     * @param ids
     */
    @Transactional
    void deleteByIds(List<Long> ids);
}
